package com.example.demo.entity;

import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 咨询者向咨询师发出的心理咨询预约
 * </p>
 *
 * @author hyb
 * @since 2024-12-24
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class Appointment implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 预约记录的id
     */
    private Integer appointmentId;

    /**
     * 预约状态：	1申请 未通过	
2申请 通过	
3通过 咨询师申请取消 咨询者未回复	
4通过 咨询者申请取消 咨询师未回复
	5通过 咨询师申请取消 咨询者同意取消
	6通过 咨询师申请取消 咨询者不同意取消	
7通过 咨询者申请取消 咨询师不同意取消	
8通过 咨询者申请取消 咨询师同意取消
     */
    private Integer status;

    /**
     * 咨询者id
     */
    private Integer clientId;

    /**
     * 咨询师id
     */
    private Integer doctorId;

    /**
     * 预约时间id，对应可预约时间表中的具体预约时间
     */
    private Integer timelistId;

    /**
     * 记录是否有效
     */
    private Integer isActive;

    /**
     * 记录最后更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 记录创建时间
     */
    private LocalDateTime createTime;
    public Appointment(Integer id, Integer clientId, Integer doctorId, Integer timelistId) {
        this.appointmentId = id;
        this.status=1;
        this.clientId = clientId;
        this.doctorId = doctorId;
        this.timelistId = timelistId;
        this.isActive=1;
        this.createTime = LocalDateTime.now();
        this.updateTime = LocalDateTime.now();
    }



}
